#include <stdio.h>
#include <fcntl.h>


int main(int argc, char const *argv[])
{
    /* code */
    char buf[64] = {0};
    int flag = fcntl(0, F_GETFL); // 获取原来的文件状态标识
    flag |= O_NONBLOCK; // 追加非阻塞标志
    fcntl(0, F_SETFL, flag); // 重新设置文件状态标识
    while(1) {
        fgets(buf, sizeof(buf), stdin);
        printf("buf = %s\n", buf);  // 非阻塞会十分消耗资源， 会不断检查内容
    }
    return 0;
}
